/**
 * Java：子数组按位或操作
 *
 * @author：紫水木鱼
 * @createDate：2024-12-26 14:35:41
 */
package leetcode.editor.cn;
//给定一个整数数组
// arr，返回所有 arr 的非空子数组的不同按位或的数量。 
//
// 子数组的按位或是子数组中每个整数的按位或。含有一个整数的子数组的按位或就是该整数。 
//
// 子数组 是数组内连续的非空元素序列。 
//
// 
//
// 示例 1： 
//
// 
//输入：arr = [0]
//输出：1
//解释：
//只有一个可能的结果 0 。
// 
//
// 示例 2： 
//
// 
//输入：arr = [1,1,2]
//输出：3
//解释：
//可能的子数组为 [1]，[1]，[2]，[1, 1]，[1, 2]，[1, 1, 2]。
//产生的结果为 1，1，2，1，3，3 。
//有三个唯一值，所以答案是 3 。
// 
//
// 示例 3： 
//
// 
//输入：arr = [1,2,4]
//输出：6
//解释：
//可能的结果是 1，2，3，4，6，以及 7 。
// 
//
// 
//
// 提示：
// 
//
// 
// 1 <= nums.length <= 5 * 10⁴ 
// 0 <= nums[i] <= 10⁹ 
// 
//
// Related Topics 位运算 数组 动态规划 👍 158 👎 0

//子数组按位或操作
class BitwiseOrsOfSubarrays {
    public static void main(String[] args) {
        Solution solution = new BitwiseOrsOfSubarrays().new Solution();
        // TO TEST
    }

    //leetcode submit region begin(Prohibit modification and deletion)
    class Solution {
        public int subarrayBitwiseORs(int[] arr) {
            return 0;
        }
    }
//leetcode submit region end(Prohibit modification and deletion)

}